home *** CD-ROM | disk | FTP | other *** search
/ Aminet 39 / Aminet 39 (2000)(Schatztruhe)[!][Oct 2000].iso / Aminet / biz / swood / FW_AllInOne.lha / Makros / Hilfslinien.long < prev    next >
Text File  |  1998-01-17  |  7KB  |  233 lines

  1. /*******************************************
  2.  * Hilfslinien für FW-97+                  *
  3.  * $VER: 1.1 © Heiko Schröder   (09.01.98) *
  4.  *******************************************/
  5.  
  6. /* Hilfslinien gehen nicht über das Dok hinaus; FW-BUG 
  7.    kompakte Oberfläche
  8.    bei Falscheingabe Aktivierung der Felder*/
  9.  
  10. Parse ARG FW
  11.  
  12. if ~show('L',"rexxreqtools.library") then
  13.    if ~addlib('rexxreqtools.library',0,-30,0) then do
  14.       'ShowMessage 1 1 "Fehler...." "Benötige Libs:rexxreqtools.library" " A B B R U C H ! !" "Okay" "" ""'
  15.       exit
  16.    end
  17. IF ~show('L','tritonrexx.library') then
  18.    IF ~ADDLIB('tritonrexx.library',10,-30,0) THEN DO
  19.       'ShowMessage 2 1 "Fehler...." "Benötige Libs:tritonrexx.library" "" "Abbruch" "" ""'
  20.       exit
  21.    END
  22.  
  23. R='0A'X
  24.  
  25. If FW='' then do
  26.    Address='FinalW'
  27.    Options results
  28.  
  29.    STATUS PORTNAME
  30.    FW = result
  31. End
  32.    address=FW
  33.  
  34. SIGNAL ON SYNTAX
  35.  
  36. If open('Hilfe',"S:FW_Paket.prefs","R") then do
  37.    HilfeVerz=readln('Hilfe')
  38.    Call Close('Hilfe')
  39. End
  40. else HilfeVerz=''
  41.  
  42. mxlist.0 = 2
  43. mxlist.1 = 'horizontal'
  44. mxlist.2 = 'vertikal'
  45.  
  46. apptags =      'TRCA_Name     HLinien',
  47.                'TRCA_LongName "Hilfslinien"',
  48.                'TRCA_Info     "Makro für Finalwriter"',
  49.                'TRCA_Version  "1.1 registered"',
  50.                'TRCA_Release  "3"',
  51.                'TRCA_Date     "09.01.98"',
  52.                'TAG_END'
  53.  
  54. windowtags =   WindowID(1),
  55.                WindowPosition('TRWP_CENTERDISPLAY'),
  56.                WindowFlags('TRWF_NOSIZEGADGET|TRWF_NOMINTEXTWIDTH|TRWF_ACTIVATESTRGAD'),
  57.                PubScreenName('FinalWriterPubScreen'),
  58.                WindowTitle('Hilfslinien'),
  59.                BeginMenu('Projekt'),
  60.                   MenuItem('Q_Verlassen...',104),
  61.                BeginMenu('?'),
  62.                   MenuItem('?_Info',101),
  63.                   MenuItem('H_Hilfe',103),
  64.                   'HorizGroupAC',
  65.                      'SpaceS',
  66.                      'VertGroupAC',
  67.                         'SpaceS',
  68.                         'HorizGroupEC SpaceS',
  69.                            TextID('Aus_richtung: ',1),
  70.                            'SpaceS',
  71.                            MXGadget('mxlist',0,1) 'TRAT_Flags TRCY_RIGHTLABELS',
  72.                         'SpaceS EndGroup',
  73.                         'SpaceS',
  74.                         'HorizGroupEC SpaceS',
  75.                         'LineArray',
  76.                            'BeginLine',
  77.                               TextID('An_zahl: ',2),
  78.                               'SpaceS',
  79.                               StringGadget('1',2),
  80.                            'EndLine',
  81.                            'BeginLine',
  82.                               TextID('Off_set: ',3),
  83.                               'SpaceS',
  84.                               StringGadget('',3),
  85.                               TextN(' cm'),
  86.                            'EndLine',
  87.                            'BeginLine',
  88.                               TextID('Abs_tand: ',4),
  89.                               'SpaceS',
  90.                               StringGadget('',4),
  91.                               TextN(' cm'),
  92.                            'EndLine',
  93.                         'EndArray',
  94.                         'SpaceS EndGroup',
  95.                         'SpaceS',
  96.                         'HorizgroupEC',
  97.                            Button('_Anwenden',7),
  98.                            'SpaceS',
  99.                            Button('Ab_bruch',8),
  100.                         'EndGroup',
  101.                         'SpaceS',
  102.                      'EndGroup',
  103.                      'SpaceS',
  104.                   'EndGroup',
  105.                'EndProject'
  106.  
  107. app = TR_CREATEAPP('TRCA_Name MEinfügen')
  108.  
  109. richt=1
  110.  
  111. IF app ~= '00000000'x THEN DO
  112.    window1 = TR_OPENPROJECT(app,windowtags)
  113.    IF window1 ~= '00000000'x THEN DO
  114.       ende = 0
  115.  
  116.       DO WHILE ende ~= 1
  117.          CALL TR_WAIT(app,'')
  118.  
  119.          DO WHILE TR_HANDLEMSG(app,'event')
  120.             IF event.trm_class = 'TRMS_NEWVALUE' THEN DO
  121.                SELECT
  122.                   WHEN event.trm_id = 1 THEN richt = event.trm_data+1
  123.  
  124.                   OTHERWISE
  125.                      NOP
  126.                END
  127.             END
  128.  
  129.             IF event.trm_class = 'TRMS_ACTION' THEN DO
  130.                SELECT
  131.                   WHEN event.trm_id = 7 THEN Call program
  132.  
  133.                   WHEN event.trm_id = 8 THEN ende = 1
  134.  
  135.                   WHEN event.trm_id = 101 THEN Call rtezrequest("Aus dem Makro-Paket:"||R||R||"Hilfslinien V1.1 für FW"||R||"© 1998 Heiko Schröder","Danke für Ihre Registrierung.","Info","rt_pubscrname=FinalWriterPubScreen")
  136.                   WHEN event.trm_id = 103 THEN address command "run Multiview PUBSCREEN=FinalWriterPubScreen "||d2c(34)||HilfeVerz||"Hilfslinien.guide"||d2c(34)
  137.                   WHEN event.trm_id = 104 THEN ende=1
  138.  
  139.                   OTHERWISE NOP
  140.                END
  141.             END
  142.  
  143.             IF event.trm_class = 'TRMS_CLOSEWINDOW' THEN ende=1
  144.  
  145.          END
  146.       END
  147.  
  148.       CALL TR_CLOSEPROJECT(window1)
  149.    END
  150.  
  151.    CALL TR_DELETEAPP(app)
  152. END
  153. ELSE
  154.    CALL quit('Kann das Fenster nicht öffnen',10)
  155.  
  156. Exit
  157.  
  158. program:
  159.    GetDocItemPrefs Decimal
  160.    Punkt=Result
  161.    If Punkt="Comma" then DocItemPrefs Decimal Period
  162.  
  163.    Anzahl = TR_GETATTRIBUTE(window1,2,'TROB_String')
  164.    If Datatype(Anzahl,'W')=0 then do
  165.       x=rtezrequest("Bei ANZAHL bitte ganzzahligen Wert","_Achso","Eingabe-Fehler","rt_pubscrname=FinalWriterPubScreen")
  166.       Call TR_SendMessage(window1,2,'TROM_ACTIVATE',0)
  167.       return
  168.    end
  169.  
  170.    Offset = TR_GETATTRIBUTE(window1,3,'TROB_String')
  171.    If Datatype(Offset,'N')=0 then do
  172.       x=rtezrequest("Bei OFFSET bitte numerische Angabe mit (.)","_Achso","Eingabe-Fehler","rt_pubscrname=FinalWriterPubScreen")
  173.       Call TR_SendMessage(window1,3,'TROM_ACTIVATE',0)
  174.       return
  175.    end
  176.  
  177.    Weite=TR_GETATTRIBUTE(window1,4,'TROB_String')
  178.    If Weite='' then Weite=0
  179.    If Datatype(Weite,'N')=0 then do
  180.       x=rtezrequest("Bei WEITE bitte numerische Angabe mit (.)","_Achso","Eingabe-Fehler","rt_pubscrname=FinalWriterPubScreen")
  181.       Call TR_SendMessage(window1,4,'TROM_ACTIVATE',0)
  182.       return
  183.    end
  184.  
  185.    address(FW)
  186.    GetPageSetup Width Height
  187.    Parse Var result DokBreite DokHoehe
  188.  
  189.    do i=0 to Anzahl-1
  190.       Stelle=Offset+i*Weite
  191.       if richt=1 then 
  192.          If Stelle<=DokHoehe then SetSnapToGuide HORIZONTAL Stelle
  193.       if richt=2 then 
  194.          If Stelle<=DokBreite then SetSnapToGuide Vertical Stelle
  195.    End
  196.    redraw
  197.    If Punkt="Comma" then DocItemPrefs DECIMAL Comma
  198.  
  199. return
  200.  
  201. /*******************************************************************************
  202. ** Routine, die bei einer Unterbrechung des Scripts aufgerufen wird
  203. *******************************************************************************/
  204.  
  205. SYNTAX:
  206.    CALL quit('Fehler' rc 'in Zeile' sigl '-' ERRORTEXT(rc)||R||SOURCELINE(sigl)||R||'Bitte informieren Sie den Autor...',20)
  207.  
  208.  
  209. /*******************************************************************************
  210. ** Script beenden
  211. *******************************************************************************/
  212.  
  213. quit:
  214.    PARSE ARG message,rcode
  215.  
  216.    IF app ~= '00000000'x THEN DO
  217.       IF message ~= '' THEN
  218.          ret=rtezrequest(message,"_Okay","ACHTUNG!","rt_pubscrname=FinalWriterPubScreen")
  219.  
  220.       CALL TR_DELETEAPP(app)
  221.    END
  222.    ELSE DO
  223.       IF message ~= '' THEN DO
  224.          SAY message
  225.          SAY
  226.          OPTIONS PROMPT 'Bitte <RETURN> drücken'
  227.          PULL taste
  228.       END
  229.    END
  230.  
  231.    address command "flushtrx all"
  232.    EXIT(rcode)
  233.